package com.spic.business.train.autonomic.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.spic.business.train.autonomic.domain.TrainAutonomicLearning;

import java.util.List;

/**
 * 课件自主学习Service接口
 * 
 * @author spic
 * @date 2021-10-21
 */
public interface ITrainAutonomicLearningService extends IService<TrainAutonomicLearning>
{
    /**
     * 查询课件自主学习
     * 
     * @param id 课件自主学习主键
     * @return 课件自主学习
     */
    public TrainAutonomicLearning selectTrainAutonomicLearningById(Long id);

    /**
     * 查询课件自主学习列表
     * 
     * @param trainAutonomicLearning 课件自主学习
     * @return 课件自主学习集合
     */
    public List<TrainAutonomicLearning> selectTrainAutonomicLearningList(TrainAutonomicLearning trainAutonomicLearning);

    /**
     * 新增课件自主学习
     * 
     * @param trainAutonomicLearning 课件自主学习
     * @return 结果
     */
    public int insert(TrainAutonomicLearning trainAutonomicLearning);

    /**
     * 批量新增课件自主学习
     *
     * @param trainAutonomicLearning 课件自主学习
     * @return 结果
     */
    public boolean batchInsert(List<TrainAutonomicLearning> trainAutonomicLearning);


    /**
     * 更新自主学习进度
     * 
     * @param trainAutonomicLearning 课件自主学习
     * @return 结果
     */
    public int updateProgress(TrainAutonomicLearning trainAutonomicLearning);


    /**
     * 删除课件自主学习信息
     * 
     * @param id 课件自主学习主键
     * @return 结果
     */
    public int deleteTrainAutonomicLearningById(Long id);


    /**批量删除自主学习根据trainUserIds
     * @param trainUserIds
     * @return
     */
    public int deleteTrainAutonomicLearningByTrainUserIds(List<Long> trainUserIds);
}
